# This Python file uses the following encoding: utf-8
#############################################################################
##
## Copyright (C) 2020 The Qt Company Ltd.
## Contact: https://www.qt.io/licensing/
##
## This file is part of Qt for Python.
##
## $QT_BEGIN_LICENSE:LGPL$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see https://www.qt.io/terms-conditions. For further
## information use the contact form at https://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 3 as published by the Free Software
## Foundation and appearing in the file LICENSE.LGPL3 included in the
## packaging of this file. Please review the following information to
## ensure the GNU Lesser General Public License version 3 requirements
## will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
##
## GNU General Public License Usage
## Alternatively, this file may be used under the terms of the GNU
## General Public License version 2.0 or (at your option) the GNU General
## Public license version 3 or any later version approved by the KDE Free
## Qt Foundation. The licenses are as published by the Free Software
## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
## included in the packaging of this file. Please review the following
## information to ensure the GNU General Public License requirements will
## be met: https://www.gnu.org/licenses/gpl-2.0.html and
## https://www.gnu.org/licenses/gpl-3.0.html.
##
## $QT_END_LICENSE$
##
#############################################################################

"""
This file contains the exact signatures for all functions in module
Qt.QtWinExtras, except for defaults which are replaced by "...".
"""

# Module Qt.QtWinExtras
import Qt
try:
    import typing
except ImportError:
    from Qt.support.signature import typing
from Qt.support.signature.mapping import (
    Virtual, Missing, Invalid, Default, Instance)

class Object(object): pass

import shiboken2 as Shiboken
Shiboken.Object = Object

import Qt.QtCore
import Qt.QtGui
import Qt.QtWinExtras


class QWinColorizationChangeEvent(Qt.QtWinExtras.QWinEvent):

    def __init__(self, color:int, opaque:bool): ...

    def color(self) -> int: ...
    def opaqueBlend(self) -> bool: ...


class QWinCompositionChangeEvent(Qt.QtWinExtras.QWinEvent):

    def __init__(self, enabled:bool): ...

    def isCompositionEnabled(self) -> bool: ...


class QWinEvent(Qt.QtCore.QEvent):

    def __init__(self, type:int): ...


class QWinJumpList(Qt.QtCore.QObject):

    def __init__(self, parent:typing.Optional[Qt.QtCore.QObject]=...): ...

    @typing.overload
    def addCategory(self, category:Qt.QtWinExtras.QWinJumpListCategory): ...
    @typing.overload
    def addCategory(self, title:str, items:typing.Sequence=...) -> Qt.QtWinExtras.QWinJumpListCategory: ...
    def categories(self) -> typing.List: ...
    def clear(self): ...
    def frequent(self) -> Qt.QtWinExtras.QWinJumpListCategory: ...
    def identifier(self) -> str: ...
    def recent(self) -> Qt.QtWinExtras.QWinJumpListCategory: ...
    def setIdentifier(self, identifier:str): ...
    def tasks(self) -> Qt.QtWinExtras.QWinJumpListCategory: ...


class QWinJumpListCategory(Shiboken.Object):
    Custom                   : QWinJumpListCategory = ... # 0x0
    Recent                   : QWinJumpListCategory = ... # 0x1
    Frequent                 : QWinJumpListCategory = ... # 0x2
    Tasks                    : QWinJumpListCategory = ... # 0x3

    class Type(object):
        Custom                   : QWinJumpListCategory.Type = ... # 0x0
        Recent                   : QWinJumpListCategory.Type = ... # 0x1
        Frequent                 : QWinJumpListCategory.Type = ... # 0x2
        Tasks                    : QWinJumpListCategory.Type = ... # 0x3

    def __init__(self, title:str=...): ...

    def addDestination(self, filePath:str) -> Qt.QtWinExtras.QWinJumpListItem: ...
    def addItem(self, item:Qt.QtWinExtras.QWinJumpListItem): ...
    @typing.overload
    def addLink(self, icon:Qt.QtGui.QIcon, title:str, executablePath:str, arguments:typing.Sequence=...) -> Qt.QtWinExtras.QWinJumpListItem: ...
    @typing.overload
    def addLink(self, title:str, executablePath:str, arguments:typing.Sequence=...) -> Qt.QtWinExtras.QWinJumpListItem: ...
    def addSeparator(self) -> Qt.QtWinExtras.QWinJumpListItem: ...
    def clear(self): ...
    def count(self) -> int: ...
    def isEmpty(self) -> bool: ...
    def isVisible(self) -> bool: ...
    def items(self) -> typing.List: ...
    def setTitle(self, title:str): ...
    def setVisible(self, visible:bool): ...
    def title(self) -> str: ...
    def type(self) -> Qt.QtWinExtras.QWinJumpListCategory.Type: ...


class QWinJumpListItem(Shiboken.Object):
    Destination              : QWinJumpListItem = ... # 0x0
    Link                     : QWinJumpListItem = ... # 0x1
    Separator                : QWinJumpListItem = ... # 0x2

    class Type(object):
        Destination              : QWinJumpListItem.Type = ... # 0x0
        Link                     : QWinJumpListItem.Type = ... # 0x1
        Separator                : QWinJumpListItem.Type = ... # 0x2

    def __init__(self, type:Qt.QtWinExtras.QWinJumpListItem.Type): ...

    def arguments(self) -> typing.List: ...
    def description(self) -> str: ...
    def filePath(self) -> str: ...
    def icon(self) -> Qt.QtGui.QIcon: ...
    def setArguments(self, arguments:typing.Sequence): ...
    def setDescription(self, description:str): ...
    def setFilePath(self, filePath:str): ...
    def setIcon(self, icon:Qt.QtGui.QIcon): ...
    def setTitle(self, title:str): ...
    def setType(self, type:Qt.QtWinExtras.QWinJumpListItem.Type): ...
    def setWorkingDirectory(self, workingDirectory:str): ...
    def title(self) -> str: ...
    def type(self) -> Qt.QtWinExtras.QWinJumpListItem.Type: ...
    def workingDirectory(self) -> str: ...


class QWinTaskbarButton(Qt.QtCore.QObject):

    def __init__(self, parent:typing.Optional[Qt.QtCore.QObject]=...): ...

    def clearOverlayIcon(self): ...
    def eventFilter(self, arg__1:Qt.QtCore.QObject, arg__2:Qt.QtCore.QEvent) -> bool: ...
    def overlayAccessibleDescription(self) -> str: ...
    def overlayIcon(self) -> Qt.QtGui.QIcon: ...
    def progress(self) -> Qt.QtWinExtras.QWinTaskbarProgress: ...
    def setOverlayAccessibleDescription(self, description:str): ...
    def setOverlayIcon(self, icon:Qt.QtGui.QIcon): ...
    def setWindow(self, window:Qt.QtGui.QWindow): ...
    def window(self) -> Qt.QtGui.QWindow: ...


class QWinTaskbarProgress(Qt.QtCore.QObject):

    def __init__(self, parent:typing.Optional[Qt.QtCore.QObject]=...): ...

    def hide(self): ...
    def isPaused(self) -> bool: ...
    def isStopped(self) -> bool: ...
    def isVisible(self) -> bool: ...
    def maximum(self) -> int: ...
    def minimum(self) -> int: ...
    def pause(self): ...
    def reset(self): ...
    def resume(self): ...
    def setMaximum(self, maximum:int): ...
    def setMinimum(self, minimum:int): ...
    def setPaused(self, paused:bool): ...
    def setRange(self, minimum:int, maximum:int): ...
    def setValue(self, value:int): ...
    def setVisible(self, visible:bool): ...
    def show(self): ...
    def stop(self): ...
    def value(self) -> int: ...


class QWinThumbnailToolBar(Qt.QtCore.QObject):

    def __init__(self, parent:typing.Optional[Qt.QtCore.QObject]=...): ...

    def addButton(self, button:Qt.QtWinExtras.QWinThumbnailToolButton): ...
    def buttons(self) -> typing.List: ...
    def clear(self): ...
    def count(self) -> int: ...
    def iconicLivePreviewPixmap(self) -> Qt.QtGui.QPixmap: ...
    def iconicPixmapNotificationsEnabled(self) -> bool: ...
    def iconicThumbnailPixmap(self) -> Qt.QtGui.QPixmap: ...
    def removeButton(self, button:Qt.QtWinExtras.QWinThumbnailToolButton): ...
    def setButtons(self, buttons:typing.Sequence): ...
    def setIconicLivePreviewPixmap(self, arg__1:Qt.QtGui.QPixmap): ...
    def setIconicPixmapNotificationsEnabled(self, enabled:bool): ...
    def setIconicThumbnailPixmap(self, arg__1:Qt.QtGui.QPixmap): ...
    def setWindow(self, window:Qt.QtGui.QWindow): ...
    def window(self) -> Qt.QtGui.QWindow: ...


class QWinThumbnailToolButton(Qt.QtCore.QObject):

    def __init__(self, parent:typing.Optional[Qt.QtCore.QObject]=...): ...

    def click(self): ...
    def dismissOnClick(self) -> bool: ...
    def icon(self) -> Qt.QtGui.QIcon: ...
    def isEnabled(self) -> bool: ...
    def isFlat(self) -> bool: ...
    def isInteractive(self) -> bool: ...
    def isVisible(self) -> bool: ...
    def setDismissOnClick(self, dismiss:bool): ...
    def setEnabled(self, enabled:bool): ...
    def setFlat(self, flat:bool): ...
    def setIcon(self, icon:Qt.QtGui.QIcon): ...
    def setInteractive(self, interactive:bool): ...
    def setToolTip(self, toolTip:str): ...
    def setVisible(self, visible:bool): ...
    def toolTip(self) -> str: ...


class QtWin(Shiboken.Object):
    FlipDefault              : QtWin = ... # 0x0
    HBitmapNoAlpha           : QtWin = ... # 0x0
    FlipExcludeBelow         : QtWin = ... # 0x1
    HBitmapPremultipliedAlpha: QtWin = ... # 0x1
    FlipExcludeAbove         : QtWin = ... # 0x2
    HBitmapAlpha             : QtWin = ... # 0x2

    class HBitmapFormat(object):
        HBitmapNoAlpha           : QtWin.HBitmapFormat = ... # 0x0
        HBitmapPremultipliedAlpha: QtWin.HBitmapFormat = ... # 0x1
        HBitmapAlpha             : QtWin.HBitmapFormat = ... # 0x2

    class WindowFlip3DPolicy(object):
        FlipDefault              : QtWin.WindowFlip3DPolicy = ... # 0x0
        FlipExcludeBelow         : QtWin.WindowFlip3DPolicy = ... # 0x1
        FlipExcludeAbove         : QtWin.WindowFlip3DPolicy = ... # 0x2
    @staticmethod
    def colorizationColor() -> typing.Tuple: ...
    @staticmethod
    def disableBlurBehindWindow(window:Qt.QtGui.QWindow): ...
    @typing.overload
    @staticmethod
    def enableBlurBehindWindow(window:Qt.QtGui.QWindow): ...
    @typing.overload
    @staticmethod
    def enableBlurBehindWindow(window:Qt.QtGui.QWindow, region:Qt.QtGui.QRegion): ...
    @staticmethod
    def errorStringFromHresult(hresult:int) -> str: ...
    @typing.overload
    @staticmethod
    def extendFrameIntoClientArea(window:Qt.QtGui.QWindow, left:int, top:int, right:int, bottom:int): ...
    @typing.overload
    @staticmethod
    def extendFrameIntoClientArea(window:Qt.QtGui.QWindow, margins:Qt.QtCore.QMargins): ...
    @staticmethod
    def isCompositionEnabled() -> bool: ...
    @staticmethod
    def isCompositionOpaque() -> bool: ...
    @staticmethod
    def isWindowExcludedFromPeek(window:Qt.QtGui.QWindow) -> bool: ...
    @staticmethod
    def isWindowPeekDisallowed(window:Qt.QtGui.QWindow) -> bool: ...
    @staticmethod
    def markFullscreenWindow(arg__1:Qt.QtGui.QWindow, fullscreen:bool=...): ...
    @staticmethod
    def realColorizationColor() -> Qt.QtGui.QColor: ...
    @staticmethod
    def resetExtendedFrame(window:Qt.QtGui.QWindow): ...
    @staticmethod
    def setCompositionEnabled(enabled:bool): ...
    @staticmethod
    def setCurrentProcessExplicitAppUserModelID(id:str): ...
    @staticmethod
    def setWindowDisallowPeek(window:Qt.QtGui.QWindow, disallow:bool): ...
    @staticmethod
    def setWindowExcludedFromPeek(window:Qt.QtGui.QWindow, exclude:bool): ...
    @staticmethod
    def setWindowFlip3DPolicy(window:Qt.QtGui.QWindow, policy:Qt.QtWinExtras.QtWin.WindowFlip3DPolicy): ...
    @staticmethod
    def stringFromHresult(hresult:int) -> str: ...
    @staticmethod
    def taskbarActivateTab(arg__1:Qt.QtGui.QWindow): ...
    @staticmethod
    def taskbarActivateTabAlt(arg__1:Qt.QtGui.QWindow): ...
    @staticmethod
    def taskbarAddTab(arg__1:Qt.QtGui.QWindow): ...
    @staticmethod
    def taskbarDeleteTab(arg__1:Qt.QtGui.QWindow): ...
    @staticmethod
    def windowFlip3DPolicy(arg__1:Qt.QtGui.QWindow) -> Qt.QtWinExtras.QtWin.WindowFlip3DPolicy: ...

# eof
